Skip to content

TPT-4298: Added PR title checking to lint workflow and new clean up release notes workflow#913

Merged
ezilber-akamai merged 8 commits intolinode:mainfrom
ezilber-akamai:TPT-4298-jira-id-in-prs
Mar 17, 2026
Merged

TPT-4298: Added PR title checking to lint workflow and new clean up release notes workflow#913
ezilber-akamai merged 8 commits intolinode:mainfrom
ezilber-akamai:TPT-4298-jira-id-in-prs

Conversation

@ezilber-akamai
Copy link
Contributor

📝 Description

Added a new step in the lint workflow to fail if the PR title does not begin with "TPT-1234:" (works with and without a space between the colon and description).

Also added a new workflow to run upon release publish to edit the release notes to remove the Jira ticket ID prefixes from patch notes.

✔️ How to Test

To test the PR title enforcement, edit the title of this PR to remove the Jira ticket ID and rerun the lint job. It should fail immediately. Then, add the Jira ticket ID back to the PR title and it should pass.

To test the release note cleanup job, check out this PR locally and merge it into your fork. Then, cut a test release to your fork. Upon generating the release notes, the TPT-**** prefix will still be there. Publish the release and verify that the new workflow is triggered. After it finishes, confirm that the release notes were correctly updated.

@ezilber-akamai ezilber-akamai requested a review from a team as a code owner March 13, 2026 16:00
Copilot AI review requested due to automatic review settings March 13, 2026 16:00
@ezilber-akamai ezilber-akamai added the repo-ci-improvement for improvements in the repository or CI workflow in the changelog. label Mar 13, 2026
@ezilber-akamai ezilber-akamai requested review from jriddle-linode and lgarber-akamai and removed request for a team March 13, 2026 16:00
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds GitHub Actions automation to enforce Jira-prefixed PR titles during CI and to post-process published release notes by removing Jira ticket prefixes from generated changelog entries.

Changes:

  • Add a PR title validation step to the lint-tidy CI job to enforce TPT-1234: prefix format.
  • Introduce a new Clean Release Notes workflow that runs on release publish and updates the release body to remove TPT-####: prefixes.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

File Description
.github/workflows/ci.yml Adds a CI step to validate PR title format before lint/tidy runs.
.github/workflows/clean-release-notes.yml Adds a workflow to rewrite published release notes by stripping Jira-style prefixes.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

@mgwoj mgwoj left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One suggestion IMHO should be applied

@ezilber-akamai ezilber-akamai requested a review from mgwoj March 13, 2026 17:29
Copy link
Contributor

@yec-akamai yec-akamai left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Nice work adding the lint!

@ezilber-akamai
Copy link
Contributor Author

Just realized that this will cause lint failures for PRs opened by dependabot. Do we want to add an exclusion for the requirement for PRs with titles that begin with build(deps):?

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds CI enforcement for Jira-style PR titles and introduces an automated post-publish workflow to strip ticket prefixes from GitHub release notes.

Changes:

  • Add a lint workflow step that fails PR runs unless the PR title matches TPT-1234: ... (allowing optional space after :).
  • Add a new release.published workflow that rewrites release notes to remove TPT-####: prefixes.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

File Description
.github/workflows/ci.yml Adds PR-title validation step to the lint job using gh pr view to get the latest title.
.github/workflows/clean-release-notes.yml Adds a workflow to clean published release notes by removing TPT-####: prefixes and updating the release body.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

@yec-akamai
Copy link
Contributor

Just realized that this will cause lint failures for PRs opened by dependabot. Do we want to add an exclusion for the requirement for PRs with titles that begin with build(deps):?

Oh it also reminds me that it can fail for PRs raised by external teams. Their PRs probably won't have a proper TPT number for the title either

@ezilber-akamai
Copy link
Contributor Author

Just realized that this will cause lint failures for PRs opened by dependabot. Do we want to add an exclusion for the requirement for PRs with titles that begin with build(deps):?

Oh it also reminds me that it can fail for PRs raised by external teams. Their PRs probably won't have a proper TPT number for the title either

Good point. I don't have as clean of a solution in mind for this case. Any idea on a solution for this? We can maybe check if the author is part of the DX GitHub team and if it is require the TPT in the title, otherwise skip the check?

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates GitHub Actions automation to (1) enforce Jira-style ticket prefixes on PR titles during CI linting, and (2) post-process published release notes to remove TPT-####: prefixes.

Changes:

  • Add a PR-title validation step to the lint-tidy job in CI.
  • Add a new workflow that runs on release.published to clean ticket prefixes from release bodies.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
.github/workflows/clean-release-notes.yml New workflow to strip TPT-####: prefixes from published release notes and update the release via API.
.github/workflows/ci.yml Adds PR title validation logic (with label/bot exemptions) and introduces job-level token permissions.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

@ezilber-akamai ezilber-akamai force-pushed the TPT-4298-jira-id-in-prs branch from c0845ac to 7f84ce8 Compare March 17, 2026 17:11
@ezilber-akamai ezilber-akamai force-pushed the TPT-4298-jira-id-in-prs branch from 7f84ce8 to 827fd65 Compare March 17, 2026 17:19
@ezilber-akamai ezilber-akamai merged commit cf20b58 into linode:main Mar 17, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

repo-ci-improvement for improvements in the repository or CI workflow in the changelog.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants